Updating internal states of a speech decoder after errors have occurred

ABSTRACT

When errors occur in a received code sequence, an error concealment routine part 130 is actuated and a correct code sequence is generated based on a code sequence received before the errors are detected. A decoding routine part 21&#39; executes a decoding process based on this code sequence and updates the internal state based on the decoded result. Thereafter, when the code errors are recovered, an error recovery routine part 140 is actuated. The error recovery routine part 140 re-estimates a correct code sequence during a time period when the errors are detected, based on a code sequence received before the errors are detected and a code sequence received after no more errors are detected, and generates a second estimated code sequence. The decode process part 21&#39; executes the decoding process based on an internal state information for retaining the second estimated code sequence in an internal state storage part 23&#39;, and updates the internal state information based on the decoded result. By doing this, the quality of the decoded speech, which has recovered from code errors, can be improved.

BACKGROUND OF THE INVENTION

1. Technical Field

This invention relates to a speech decoder suite to be used for digitalspeech communication.

2. Background Art

In a low bit rate speech coding algorithm, a coding algorithm, which isbased on a CELP (Code Excited Linear Prediction Coding) such as LD-GELP(ITU-T/G. 728), VSELP and SPI-CELP (RCR/STD27-C) is widely used.Although it is not limited to such a CELP series speech codingalgorithm, in order to carry out a coding correctly in a codingalgorithm having internal states in an encoder and in a decoder, it isessential that the internal state of the encoder is exactly coincidentwith that of the decoder. Here, imagining, for example, an IIR filter ofFIG. 6, the terms "internal state" corresponds to y(t-1), . . . , y(t-1)of the output signal sequences till last time. In other words, when adecoding is currently carried out utilizing a decoded result in the pastas in the speech coding algorithm, the decoded result in the pastcorresponds to the above-mentioned "internal state". An adaptivecodebook is its representative example.

However, the decoder sometimes carries out a decoding with damaged codesdue to code errors which occur on a transmission line. In that case, itoccurs that the internal state of the encoder is not coincident withthat of the decoder. When such a non-coincidence of the internal statesoccurs, a decoding cannot be carried out in a correct manner even if acorrect code is used, and distortion of the decoded speech continues fora while even after the recovery of the code errors. Thus, a largedegradation of quality results.

A speech decoder is known as a device capable of lessening thedegradation of quality, which is employed in a PDC (Personal DigitalCellular telecommunication system) full rate algorithm as shown in FIG.7. In FIG. 7, reference numeral 1 denotes an input code sequence processunit which comprises an input code sequence process part 11 and inputcode sequence storage part 12. Reference numeral 2 denotes a decodingprocess unit which comprises a decoding process part 21, an internalstate process part 22, and an internal state storage part 23. Referencenumeral 3 denotes an error detection unit for detecting the errors of areceived input code sequence In(i) (where i represents time and takes avalue of i=0, 1, 2, . . . ) utilizing a CRC (Cyclic Redundancy Code).

The error detection unit 3 outputs an error detection signal E to theinput code sequence process part 11 and the decoding process part 21when it detects errors in the input code sequence In(i).

The input code sequence process part 11 removes redundancy bits from theinput code sequence In(i) and outputs the same in the form of a codesequence C(i) to the decoding process part 21 when no errors aredetected in the input code sequence In(i) and no error detection signal(E) is output from the error detection unit 3. This code sequence C(i)is also output to the code sequence storage part 12 and stored therein.

Based on internal state information So(i) supplied from the internalstate process part 22, the decoding process part 21 decodes the codesequence C(i), outputs a decoded speech SP(i), and outputs the internalstate information Si(i) to the internal state process part 22 at thetime point when the decoding process is finished. The internal stateprocess part 22 reads the internal state information So(i) stored in theinternal state storage part 23, outputs the same to the decoding processpart 21, prepares internal state information So(i+1) after thecompletion of the routine in the decoding process part 21, based on theinternal state information Si(i) supplied from the decoding process part213 and stores the internal state information So(i+1) in the internalstate storage part 23. By doing this, the contents stored in theinternal state storage part 23 are updated to So(i+1) from So(i) whenthe decoding process is finished at time i.

It is supposed that errors are found in the input code sequence In(t) attime t and the detection signal E is output from the error detectionunit 3. The input code sequence process part 11 replaces a code A by acode B, the code A corresponding to an LSP (Line Spectrum Pair, i.e.,parameter of a synthesis or inverse filter showing a spectrum envelopeof the speech) and an LAG (i.e., delay quantity of the adaptive codebookshowing the pitch cycle of the speech) contained in the code sequenceC(t) from which the redundancy bits are already removed, the code Bcorresponding to the code sequence C(t-1) stored in the input codesequence storage part 12. The input code sequence process part 11outputs a code sequence C'(t) after the replacement. The contents of theinput code sequence storage part 12 at that time remain the same as codesequence C(t-1) and are not updated. The decoding process part 21carries out the above decoding process and updates the internal stateutilizing the code sequence C'(t) supplied from the input code sequenceprocess part 11.

The LSP and LAG as objects for replacement have a high correlation withrespect to time and are not abruptly changed with the passage of time.Accordingly, the values of the adjacent LSP and LAG computed for eachpredetermined section are close to each other. Consequently, thedistortion of the decoded speech SP(t) is lessened when the decodingprocess is carried out based on the correctly received code immediatelybefore the detection of errors rather than when the decoding process iscarried out based on the code containing errors. As a consequence, thedegradation of quality can be reduced at the time point when the errorsoccur.

However, when the LSP and LAG are replaced in a conventional manner, itis seldom that the code sequence C'(t) after the replacement iscoincident with the code sequence C(t) which is presumed to contain noerrors. Accordingly, an occurrence of code errors makes it even moredifficult for the internal state information So(i+1) stored in theinternal state storage unit 23 to coincide with the internal state ofthe encoder. Accordingly, even in the event that no errors are detectedfrom, for example, time t+s onward and a correct code sequence C(t+s)can be obtained, the decoded speech SP(t+s) tends to be degraded due tonon-coincidence of the internal states. Especially, since thecorrelation between the LSP and LAG is reduced as the time s duringwhich the code errors occur is increased, the degree of non-coincidenceof the internal states is further increased and the degradation of thedecoded speech SP(t+s) is increased, too.

DISCLOSURE OF INVENTION

The present invention has been accomplished under the above-mentionedbackground. It is, therefore, an object of the present invention toprovide a speech decoder capable of improving the quality of decodedspeech after the recovery from code errors.

According to the present invention, a speech decoder basically compriseserror detection means for detecting whether or not a code sequenceobtained by receiving a code sequence of a speech signal transmitted inthe form of compressed digital data through a predetermined codingalgorithm contains code errors, first estimation means for estimating,when errors are detected in the received code sequence by the errordetection means, a correct code sequence based on a code sequencereceived before code errors were detected by the error detection meansand outputting an estimated code sequence, decoding means for decodingthe estimated code sequence based on internal state information retainedtherein and transforming the same into a speech signal, and updatingmeans for updating the internal state information based on the decodedresult achieved by the decoding means. The speech decoder ischaracterized by further comprising second estimation means forre-estimating a correct code sequence during a time period when errorsare detected based on a code sequence received after no more errors aredetected and outputting an estimated code sequence, when errors aredetected in the received code sequence by the error detection means butno more errors are detected thereafter, the internal state informationbeing updated based on the decoded result achieved by decoding theestimated code sequence output by the second estimation means. In thiscase, the second estimation means re-estimates a correct code sequenceduring the time period when errors are detected, based oh the codesequence received after no more errors are detected, and outputs anestimated code sequence. The decoding means decodes this estimated codesequence, and the updating means updates the internal state informationbased on this decoded result. Accordingly, the enlarged discrepancy ofthe internal state information between the encoder and the decoderduring the time when the code errors occur, is compensated.

Here, the second estimation means may re-estimate a correct codesequence during the time period when errors are detected based on a codesequence received before errors are detected and a code sequencereceived after no more errors are detected and output an estimated codesequence, when errors are detected in the received code sequence by thedetection means but no more errors are detected after the passage of thepredetermined time.

The second estimation means may re-estimate a correct code sequenceduring a time period when errors are detected based on a code sequencereceived immediately after no more errors are detected among all codesequences received after no more errors are detected, and output anestimated code sequence. Furthermore, the second estimation means mayre-estimate a correct code sequence during a time period when errors aredetected based on code sequences received after no more errors aredetected, and output an estimated code sequence.

In the speech decoder, the second estimation means may estimate acorrect code sequence based on a code sequence received immediatelybefore the detection of the errors among all code sequences receivedbefore the errors are detected. In that case, the first estimation meansmay estimate a correct code sequence based on a code sequence receivedimmediately before the detection of the errors among all code sequencesreceived before the errors are detected, as in the case with the secondestimation means.

In the speech decoder, the second estimation means may estimate acorrect code sequence based on code sequences received before thedetection of the errors. In that case, the first estimation means mayestimate a correct code sequence based on a code sequence receivedimmediately before the detection of the errors among all code sequencesreceived before the errors are detected, as in the case with the secondestimation means. Since those speech decoders can estimate the codesequence with a high degree of accuracy, the quality of decoded speechduring the time when code errors occur and after the recovery from thecode errors can be more improved.

The speech decoder may further comprise switch means for cutting off anexternal output of a speech signal during the time when the estimatedcode sequence output by the second estimation means is decoded. In thatcase, a decoded speech generated during the time when the internal stateinformation is updated can be avoided from being output outside as adelay component. Accordingly, the quality of the decoded speechrecovered from the code errors can be even more increased.

The internal state information may be an adaptive codebook.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram showing a construction of a speech decoderaccording to one embodiment of the present invention;

FIG. 2 is a view showing a relation between errors contained in an inputcode sequence and modes of routine operations of a speech decoder ofFIG. 1;

FIG. 3 is a view showing the transition of routine operation in thespeech decoder of FIG. 1;

FIG. 4 is a view showing specific an example of the routine operation inthe speech decoder of FIG. 1;

FIG. 5 is a view showing the result of measurement of segmental SNR inan experiment utilizing the speech decoder of FIG. 1;

FIG. 6 is a view exemplifying an IIR filter for explaining the internalstates; and

FIG. 7 is a block diagram showing a component configuration of aconventional speech decoder.

BEST MODE FOR CARRYING OUT THE INVENTION

One embodiment of the present invention will now be described withreference to the accompanying drawings.

1. Construction of the Embodiment

FIG. 1 is a block diagram showing a construction of a speech decoderaccording to one embodiment of the present invention. In FIG. 1, aninput code sequence process unit 1' comprises an input code sequenceprocess part 11' and an input code sequence storage part 12', whereas adecoding process unit 2' comprises a decoding process part 21', aninternal state process part 22', and an internal state storage part 23'.The input code sequence process part 11' comprises selector circuits110, 150 for selectively switching an operating action, a regularroutine part 120 for carrying out a regular routine, an errorconcealment routine part 130 for carrying out a routine when errorsoccur, and an error recovery routine part 140 for recovering errors.Reference numeral 3 denotes a detecting unit and 4, a switch,respectively.

The error detection unit 3 has the same construction as that of FIG. 3.This error detection unit 3 detects errors contained in an input codesequence In(i) transmitted through a transmission line, not shown,generates a detection signal E which becomes "1" when errors aredetected in the input code sequence In(i) and it becomes "0" when noerrors are detected, and outputs this error detection signal E to theinput code sequence process part 11' and the decoding process part 21'.

2. Operation of the Embodiment

2-1: Overall Operation of the Embodiment

An overall operation of the embodiment thus constructed will bedescribed.

The operation of this embodiment includes a regular routine, an errorconcealment routine and an error recovery routine. These routines areselected depending on the state of an error occurrable in the input codesequence. First, this will be described with reference to FIG. 2. Now,as shown in FIG. 2, when the input code sequence is changed as "noerrors→errors→no errors→errors", the error detection signal E is changedas "0→1→0 →0". In that case, the routine operation is carried out as"regular routine→error concealment routine→error recovery routine andregular routine o regular routine" in this order. FIG. 3 shows thetransition of routine operation. In FIG. 3, the error recovery routineand the regular routine are carried out after the error concealmentroutine is finished and when the error detection signal E shows "0".That is, this operation is carried out only when the state of the inputcode sequence is changed from "errors" to "no errors". Presuming thatthe input code sequence contains no errors during the time period fromtime 0 to time t, errors during the time period from time t+1 to timet+s+1, and no errors during the time period from time t+s onward, theabove routine operation will be specifically described with reference toFIGS. 1 and 4.

2-2: Regular Routine

The regular routine is described first. The error detection signal Edesignates "0" during the time period from time 0 to time t. In thatcase, the regular routine is carried out at time t=1 and no errors aredetected at time t. Therefore, according to the above-mentioned statetransition (see FIG. 3), the process proceeds from the regular routineagain to the regular routine via the line of "0".

In FIG. 1, when an input code sequence In(t) is supplied to the inputcode sequence unit 11', the selector circuit 110 selects a terminal A1and supplies the input code sequence In(t) to the regular routine part120. Thereafter, when the regular process part 120 removes theredundancy bits from the input code sequence In(t) and supplies the samein the form of a code sequence C(t) to the selector circuit 150, theselector circuit 150 selects a terminal A5 and outputs the code sequenceC(t) to the decoding process part 21'. This code sequence C(t) is alsooutput to the input code sequence storage unit 12' and stored thereon(namely, the contents of storage are not updated but the code sequenceC(t) is added thereto).

The decoding process part 21' decodes the code sequence C(t) based onthe internal state information So(t) supplied from the internal stateprocess part 22'. At that time, the switch 4 is in its ON-state and thedecoded speech SP(t) is output to the following step. The decodingprocess part 21' also outputs the internal state information Si(t) tothe internal state process part 22' at the time point when the decodingroutine is finished. The internal state process part 22' reads theinternal state information So(t) stored in the internal state storagepart 23' and outputs the same to the decoding process part 21'. Afterthe process in the decoding process part 21' is finished, the internalstate process part 22' generates internal state information So(t+1)based on the internal state information Si(t) supplied from the unit 21'and newly stores the same into the internal state storage unit 23'. Whenthe decoding process is finished at time t by this, the internal stateinformation read from the internal state storage unit 23' is changedfrom So(t) to So(t+1).

2-3: Error Concealment Routine

The error concealment routine will now be described. In this example,the error detection signal designates "1", during the time period fromtime t+1 to time t+s+1. In this case, since no errors occur at time tbut errors occurs at time t+1, the error detection signal E designates"1". For this reason, according to the above-mentioned state transition(see FIG. 3), the process proceeds from the regular routine to the errorroutine via the line of "1" at the time point of time t+1.

When the input code sequence In(t+1) is supplied to the input codesequence unit 11' at time t+1, the selector circuit 110 selects aterminal B1. At that time, the code sequence C(t) is read from the inputcode storage part 12', and supplied to the error concealment routinepart 130 via the selector circuit 110. Thereafter, the error concealmentroutine part 130 calculates an estimated code sequence C'(t+1) based onthe code sequence C(t) and outputs the same. The estimated code sequenceC'(i) refers to a code sequence which can be obtained by replacing thecorresponding part of C(i) by a code having time-wise a largecorrelation such as the afore-mentioned LSP and LAG among the codesequence C(i-1) before errors occur, for example.

Then, the selector circuit 150 selects a terminal B5 and outputs theestimated code sequence C'(t+1) from the error routine part 130 to thedecoding process part 21'. By doing this, the decoding process part 21'carries out the above-mentioned decoding and addition of the internalstate utilizing the estimated code sequence C'(t+1) supplied from theinput code sequence part 11'. During the time period from time t+2 totime t+s-1 following time t+2, the decoding process part 21' alsogenerates an estimated code sequence C'(t+2), . . . C'(t+s-1) based onthe code sequence C(t) as shown in FIG. 4 and carries out the decodingprocess and addition of the internal state based on them.

The reason why the estimated code sequence C'(t+1) is utilized for theerror concealment routine as mentioned is that distortion of the decodedspeech can be reduced in view of the acoustic sense when the decodingroutine is carried out based on the code sequence estimated from thecorrect code sequence before errors occur rather than when the decodingroutine is carried out based on the code in which errors already occur,because the speech has a time-wise correlation.

2-4: Error Recovery Routine

The error recovery routine will now be described. Since no more errorsoccur from time t+s onward, the error detection signal E at time t+sdesignates "0". In that case, according to the above-mentioned statetransition (see FIG. 3), the process proceeds from the error routine tothe error recovery routine and the regular routine via the line of "0".

At time t+s, the switch 4 is brought into its OFF-state. At that time,in the input code sequence process part 11', the selector circuits, 110,150 select the terminals C1, C5, respectively, to actuate the errorrecovery routine part 140. As shown in FIG. 4, the error recoveryroutine part 140 recalculates the code sequence C"(t), . . . , C"(t+s-1)in the error section, and outputs the result as an estimated codesequence. In this case, the error recovery routine part 140 uses thecorrect code sequence C(t) before errors occur, which code sequence C(t)is a part of the contents of storage in the input code sequence storageunit 12' and the a new correct code sequence C(t+s) generated from theinput code sequence In(t+s).

In the decoding process unit 2', the decoding process part 21' carriesout a decoding process based on the internal state information So(t)stored in the internal state storage unit 23', and the second estimatedcode sequence C"(t) The internal state process part 22' prepares anSo'(t+1) in accordance with the internal state information Si'(t) basedon the result of decoding. The internal state information So(t+1) of theinternal state storage part 23' is changed to So'(t+1) (namely,re-updating). However, since the switch 4 is in its OFF-state at thattime, no decoded speech is output and only the internal state isupdated. Then, the same updating process as mentioned above are carriedout based on the newly restored internal state information So'(t+1) andthe code sequence C"(t+1). Such process is repeated up to the codesequence C"(t+s-1). As a consequence, the internal state information ofthe internal state storage part 23' is updated to So'(t+1) . . .So'(t+s-1), as shown in FIG. 4.

When the internal state information is updated again up to So'(t+s), theswitch 4 is turned on and the above-mentioned regular routine is startedbased on the internal state information So'(t+s) and the code sequence(t+s). That is, at time t+s, presuming that the decoding process iscarried at time t ., t+s-1 based on the code sequence C"(t), . . . ,C"(t+s-1) and the contents of the internal state storage part 23' areadded, the decoding process and the addition of the internal statestorage unit 23' at time t+s are carried out.

In this way, according to this embodiment, at the time point of time t+swhen no more errors are detected, the contents of the internal statestorage part 23' at time t+1, . . . t+s-1 when errors occur, are updatedagain utilizing the code sequence C"(t+1), . . . , C"(t+s-1). By doingthis, the content of the internal state storage part 23' can be broughtcloser to that of the internal state storage part (not shown) on theencoder side. As a consequence, distortion at time t+s onward can bereduced. Moreover, since the switch 4 is turned off at time t+s, nodelay component of the decoded speech is output.

3. Experimental Example

An experiment was carried out, in which a speech decoder according tothe present invention was applied to an adaptive codebook of ACELP anderrors were added to the LAG as parameters of the adaptive codebook. Inthis experiment, the decoding process and the updating of the internalstate were carried out on the basis of each sub-frame unit, and errorswere added at the fifth and sixth sub-frames. Then, the segmental SNRwas measured. Consequently, a result of measurement as shown in FIG. 5was obtained. In FIG. 5, white squares indicate the segmental SNR whenno interpolation is carried out at the time of code errors, whereaswhite circles indicate the segmental SNR when the interpolation routineis carried out at the time of code errors. On the other hand, blacksquares indicate the segmental SNR when the error recovery routine iscarried out at the error recovery frame (seventh sub-frame) and theinterpolation routine was carried out. That is, the result ofmeasurement indicated by the black squares corresponds to the case inwhich the speech decoder according to this embodiment is applied.

For example, in the eleventh sub-frame, when the error recovery routineand the interpolation routine are carried out, the segmental SNR can beimproved by 4dB compared with the case wherein the interpolation routineis carried out and by 9dB compared with the case where no interpolationis carried out. In this way, it was ascertained that the error recoveryroutine extensively improves the segmental SNR after the code errorsoccur.

4. Modified Embodiments

In the above embodiment, the estimated code sequence C'(t+1), . . . ,C'(t+s-1) may be replaced not only by the LSP and LAG but also by othercodes having a large aging correlation, or it may be calculated by othermethods. Further, the estimation may be carried out not only byutilizing the code sequence C(t) immediately before the occurrence oferrors but also by utilizing the previous correct code sequence C(t-1),C(t-2). . . . In that case, the error recovery routine part 140recalculates the code sequence C"(t+1), . . . , C"(t+s-1) of the errorsection utilizing the correct code sequence C(t-1) C(t-2), . . .immediately before the occurrence of errors as the content of the inputcode storage unit 12', and a new correct code sequence C(t+s) generatedfrom the input code sequence In(t+s), and outputs the result.

When the estimation is carried out utilizing both the correct codesequence before the occurrence of errors and the correct code sequenceafter the recovery from errors, the second estimated code sequenceC"(t+1), C"(t+s-1) for updating the internal state information again mayuse only both the correct code sequence after the recovery from errorsand the code sequence C(t) immediately before the occurrence of errors,or may use the more previous correct code sequence C(t-1), C(t-2), . . ..

The second estimated code sequence C"(t+1), . . . , C"(t+s-1) forupdating the internal state information again may be estimated only fromthe correct code sequence after the recovery from errors. The correctcode sequence after the recovery from errors may use only the codesequence C(t+s) immediately after the recovery from errors or may usethe correct code sequence C(t+s), C(t+s+1), . . . .

The second estimated code sequence C"(t+1), . . . C"(t+s-1) is notnecessarily required to be calculated over the entire time period whenthe errors occur. It may calculates only a part of the time period andupdates the internal state based on the result of calculation.

In the systems in which some delay is allowed, it may be arranged suchthat the switch 4 is turned on at time t+s and the decoded speed isoutput.

As for the internal state, it is preferred that an adaptive codebook asa representative speech coding algorithm is used. However, the internalstate is not necessarily limited to this.

We claim:
 1. A speech decoder that receives from a speech encoder codesequences representative of speech data and decodes said code sequencesto recreate said speech data, said speech decoder comprising:(a) anerror detecting unit for detecting whether a correct or incorrect codesequence is received; (b) a decoding unit for decoding said codesequences in succession, using internal decoding information, whereinsaid decoding unit, each time decoding one code sequence, updates saidinternal decoding information based on decoding of said one codesequence for decoding of a next code sequence; (c) a regular routineunit for supplying correct code sequences to said decoding unit fordecoding to recreate said speech data; (d) an error concealment unitresponsive to receipt of an incorrect code sequence for constructing acode sequence of first estimation, using a prior correct code sequence,and supplying said code sequence of first estimation to said decodingunit for decoding to recreate said speech data; and (e) an errorrecovery unit responsive to receipt of one or more correct codesequences subsequent to receipt of one or more incorrect code sequencesfor constructing one or more code sequences of second estimation, usingsaid one or more correct code sequences, and supplying said one or morecode sequences of second estimation to said decoding unit for decoding,wherein said decoding unit, as decoding said one or more code sequencesof second estimation, redoes the updating of said internal decodinginformation previously done based on decoding of one or more codesequences of first estimation constructed in response to receipt of saidone or more incorrect code sequences in order to make said internaldecoding information coincident with internal encoding information ofsaid speech encoder.
 2. A speech decoder according to claim 1, whereinsaid error recovery unit constructs said one or more code sequences ofsecond estimation, using a correct code sequence received immediatelysubsequent to said one or more incorrect code sequences.
 3. A speechdecoder according to claim 1, wherein said error recovery unitconstructs said one or more code sequences of second estimation, usingone or more correct code sequences received prior to said one or moreincorrect code sequences and one or more correct code sequences receivedsubsequent to said one or more incorrect code sequences.
 4. A speechdecoder according to claim 3, wherein said error recovery unitconstructs said one or more code sequences of second estimation, usingtwo correct code sequences immediately succeeding and preceding said oneor more incorrect code sequences.
 5. A speech decoder according to claim1, wherein said one or more code sequences of second estimation eachcorrespond to one of said one or more incorrect code sequences.
 6. Aspeech decoder according to claim 1, wherein said error concealment unitconstructs said code sequence of first estimation by replacingtime-correlated codes contained in said incorrect code sequence withcorresponding codes contained in said prior correct code sequence.
 7. Aspeech decoder that receives from a speech encoder code sequencesrepresentative of speech data and decodes said code sequences torecreate said speech data, said speech decoder comprising:(a) an errordetecting unit for detecting whether a correct or incorrect codesequence is received; (b) a decoding unit for decoding said codesequences in succession, using internal decoding information, whereinsaid decoding unit, each time decoding one code sequence, updates saidinternal decoding information based on decoding of said one codesequence for decoding of a next code sequence; (c) a regular routineunit for supplying correct code sequences to said decoding unit fordecoding to recreate said speech data; (d) an error concealment unitresponsive to receipt of an incorrect code sequence for constructing acode sequence of first estimation, using a prior correct code sequence,and supplying said code sequence of first estimation to said decodingunit for decoding to recreate said speech data; and (e) an errorrecovery unit responsive to receipt of one or more correct codesequences subsequent to receipt of one or more incorrect code sequencesfor constructing one or more code sequences of second estimation, usingsaid one or more correct code sequences received subsequent to said oneor more incorrect code sequences and one or more correct code sequencesreceived prior to said one or more incorrect code sequences, andsupplying said one or more code sequences of second estimation to saiddecoding unit for decoding, wherein said decoding unit, as decoding saidone or more code sequences of second estimation, redoes the updating ofsaid internal decoding information previously done based on decoding ofone or more code sequences of first estimation constructed in responseto receipt of said one or more incorrect code sequences in order to makesaid internal decoding information coincident with internal encodinginformation of said speech encoder.
 8. A speech decoder according toclaim 7, wherein said error recovery unit constructs said one or morecode sequences of second estimation, using two correct code sequencesimmediately succeeding and preceding said one or more incorrect codesequences.
 9. A speech decoder according to claim 7, wherein said one ormore code sequences of second estimation each correspond to one of saidone or more incorrect code sequences.
 10. A speech decoder according toclaim 7, wherein said error concealment unit constructs said codesequence of first estimation by replacing time-correlated codescontained in said incorrect code sequence with corresponding codescontained in said prior correct code sequence.
 11. A method of decodingcode sequences representative of speech data received from a speechencoder to recreate said speech data, said method comprising the stepsof:(a) detecting whether a correct or incorrect code sequence isreceived; (b) moving to and staying in a first mode when a correct codesequence is received, said first mode including the steps ofdecodingsaid correct code sequence, using internal decoding information, torecreate said speech data, and updating said internal decodinginformation based on decoding of said correct code sequence for decodingof a next code sequence; (c) moving to and staying in a second mode whenan incorrect code sequence is received, said second mode including thesteps ofconstructing a code sequence of first estimation, using a priorcorrect code sequence, decoding said code sequence of first estimation,using said internal decoding information, to recreate said speech data,and updating said internal decoding information based on decoding ofsaid code sequence of first estimation for decoding of a next codesequence; and (d) moving from said second mode to a third mode when oneor more correct code sequences are received subsequent to receipt of oneor more incorrect code sequences, said third mode including the stepsofconstructing one or more code sequences of second estimation, usingsaid one or more correct code sequence, redoing, as decoding said one ormore code sequences of second estimation, the updating of said internaldecoding information previously done based on one or more code sequencesof first estimation constructed in response to receipt of said one ormore incorrect code sequences in order to make said internal decodinginformation coincident with internal encoding information of said speechencoder, and moving to said first mode for decoding of said subsequentcorrect code sequence to recreate said speech data.
 12. A methodaccording to claim 11, wherein said one or more code sequences of secondestimation are constructed, using a correct code sequence receivedimmediately subsequent to said one or more incorrect code sequences. 13.A method according to claim 11, wherein said one or more code sequencesof second estimation are constructed, using one or more correct codesequences received prior to said one or more incorrect code sequencesand one or more correct code sequences received subsequent to said oneor more incorrect code sequences.
 14. A method according to claim 13,wherein said one or more code sequences of second estimation areconstructed, using two correct code sequences immediately succeeding andpreceding said one or more incorrect code sequences.
 15. A methodaccording to claim 11, wherein said one or more code sequences of secondestimation each correspond to one of said one or more incorrect codesequences.
 16. A method according to claim 11, wherein said codesequence of first estimation is constructed by replacing time-correlatedcodes contained in said incorrect code sequence with corresponding codescontained in said prior correct code sequence.
 17. A method of decodingcode sequences representative of speech data received from a speechencoder to recreate said speech data, said method comprising the stepsof:(a) detecting whether a correct or incorrect code sequence isreceived; (b) moving to and staying in a first mode when a correct codesequence is received, said first mode including the steps ofdecodingsaid correct code sequence, using internal decoding information, torecreate said speech data, and updating said internal decodinginformation based on decoding of said correct code sequence for decodingof a next code sequence; (c) moving to and staying in a second mode whenan incorrect code sequence is received, said second mode including thesteps ofconstructing a code sequence of first estimation, using a priorcorrect code sequence, decoding said code sequence of first estimation,using said internal decoding information, to recreate said speech data,and updating said internal decoding information based on decoding ofsaid code sequence of first estimation for decoding of a next codesequence; and (d) moving from said second mode to a third mode when oneor more correct code sequences are received subsequent to receipt of oneor more incorrect code sequences, said third mode including the stepsofconstructing one or more code sequences of second estimation, usingsaid one or more correct code sequences received subsequent to said oneor more incorrect code sequences and one or more correct code sequencesreceived prior to said one or more incorrect code sequences, redoing, asdecoding said one or more code sequences of second estimation, theupdating of said internal decoding information previously done based onone or more code sequences of first estimation constructed in responseto receipt of said one or more incorrect code sequences in order to makesaid internal decoding information coincident with internal encodinginformation of said speech encoder, and moving to said first mode fordecoding of said subsequent correct code sequence to recreate saidspeech data.
 18. A method according to claim 17, wherein said one ormore code sequences of second estimation are constructed, using twocorrect code sequences immediately succeeding and preceding said one ormore incorrect code sequences.
 19. A method according to claim 17,wherein said one or more code sequences of second estimation eachcorrespond to one of said one or more incorrect code sequences.
 20. Amethod according to claim 17, wherein said code sequence of firstestimation is constructed by replacing time-correlated codes containedin said incorrect code sequence with corresponding codes contained insaid prior correct code sequence.